HAL SPI macro migration

This section provides information about the HAL SPI macro migration.

Note

All SPI macros are removed from the HAL SPI driver and replaced with exported functions in the LL SPI driver.

Related concept: Removal of hardware-related macros in HAL2

Enable the SPI peripheral

HAL1

HAL2

__HAL_SPI_ENABLE(__HANDLE__)
__STATIC_INLINE void LL_SPI_Enable(SPI_TypeDef *SPIx)

Disable the SPI peripheral

HAL1

HAL2

__HAL_SPI_DISABLE(__HANDLE__)
__STATIC_INLINE void LL_SPI_Disable(SPI_TypeDef *SPIx)

Disable the specified SPI interrupts

HAL1

HAL2

__HAL_SPI_DISABLE_IT(__HANDLE__, __INTERRUPT__)
__STATIC_INLINE void LL_SPI_DisableIT(SPI_TypeDef *SPIx, uint32_t Mask)

Enable the specified SPI interrupts

HAL1

HAL2

__HAL_SPI_ENABLE_IT(__HANDLE__, __INTERRUPT__)
__STATIC_INLINE void LL_SPI_EnableIT(SPI_TypeDef *SPIx, uint32_t Mask)

Clear the SPI UDR pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_TXTFFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_TXTF(SPI_TypeDef *SPIx)

Clear the SPI MODF pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_MODFFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_MODF(SPI_TypeDef *SPIx)

Clear the SPI CRCERR pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_CRCERRFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_CRCERR(SPI_TypeDef *SPIx)

Clear the SPI OVR pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_OVRFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_OVR(SPI_TypeDef *SPIx)

Clear the SPI EOT pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_EOTFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_EOT(SPI_TypeDef *SPIx)

Clear the SPI UDR pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_UDRFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_UDR(SPI_TypeDef *SPIx)

Clear the SPI SUSP pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_SUSPFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_SUSP(SPI_TypeDef *SPIx)

Clear the SPI FRE pending flag

HAL1

HAL2

__HAL_SPI_CLEAR_FREFLAG(__HANDLE__)
__STATIC_INLINE void LL_SPI_ClearFlag_FRE(SPI_TypeDef *SPIx)

Check the specified SPI flag

HAL1

HAL2

__HAL_SPI_GET_FLAG(__HANDLE__, __FLAG__)
  Use LL_SPI_IsActiveFlag(const SPI_TypeDef *SPIx, uint32_t mask) instead.

The following flags are available:

-
 .. code-block:: c

    LL_SPI_FLAG_RXP
-
 .. code-block:: c

    LL_SPI_FLAG_TXP
-
 .. code-block:: c

    LL_SPI_FLAG_DXP
-
 .. code-block:: c

    LL_SPI_FLAG_EOT
-
 .. code-block:: c

    LL_SPI_FLAG_TXTF
-
 .. code-block:: c

    LL_SPI_FLAG_UDR
-
 .. code-block:: c

    LL_SPI_FLAG_CRCE
-
 .. code-block:: c

    LL_SPI_FLAG_MODF
-
 .. code-block:: c

    LL_SPI_FLAG_OVR
-
 .. code-block:: c

    LL_SPI_FLAG_TIFRE
-
 .. code-block:: c

    LL_SPI_FLAG_SUSP
-
 .. code-block:: c

    LL_SPI_FLAG_TXC
-
 .. code-block:: c

    LL_SPI_FLAG_RXWNE

HAL SPI get IT source

HAL1

HAL2

__HAL_SPI_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
  Use LL_SPI_IsEnabledIT() instead.

The following interrupt sources are available:

-
 .. code-block:: c

    LL_SPI_IT_RXP
-
 .. code-block:: c

    LL_SPI_IT_TXP
-
 .. code-block:: c

    LL_SPI_IT_DXP
-
 .. code-block:: c

    LL_SPI_IT_EOT
-
 .. code-block:: c

    LL_SPI_IT_TXTF
-
 .. code-block:: c

    LL_SPI_IT_UDR
-
 .. code-block:: c

    LL_SPI_IT_CRCE
-
 .. code-block:: c

    LL_SPI_IT_MODF
-
 .. code-block:: c

    LL_SPI_IT_OVR
-
 .. code-block:: c

    LL_SPI_IT_TIFRE

Reset SPI handle state

HAL1

HAL2

__HAL_SPI_RESET_HANDLE_STATE(__HANDLE__)
Removed: ; use HAL_SPI_DeInit() instead to reset all states.